<template>
    <div>

    </div>
</template>

<script setup lang="ts">
/**
 * 实现一个通用Pop<T>，它接受一个数组T，并返回一个由数组T的前 length-1 项以相同的顺序组成的数组。
 */

type myPop<T extends any[]> = T extends [...infer F, infer S] ? F : never;

type arr1 = ['a', 'b', 'c', 'd'];
type arr2 = [3, 2, 1];

type re1 = myPop<arr1>; // expected to be ['a', 'b', 'c']
type re2 = myPop<arr2>; // expected to be [3, 2]

// 使用场景： 数组类型去掉最后一个类型

</script>

<style scoped>

</style>